package com.sjy.ylxt.entity.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

/**
* @Author: lils
* @CreateTime: 2024-12-12
* @Description: ${description}
*/

/**
 * 报告类
 */
@ApiModel(description="ylxt_reports")
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class YlxtReports implements Serializable {
    @ApiModelProperty(value="")
    @NotNull(message = "不能为null")
    private Integer id;

    /**
    * 报告类型：0-日维度报告 1-周维度报告 2-月维度报告
    */
    @ApiModelProperty(value="报告类型：0-日维度报告 1-周维度报告 2-月维度报告")
    @NotNull(message = "报告类型：0-日维度报告 1-周维度报告 2-月维度报告不能为null")
    private Integer reportType;

    /**
    * 报告生成日期
    */
    @ApiModelProperty(value="报告生成日期")
    @NotNull(message = "报告生成日期不能为null")
    @JsonFormat(shape = JsonFormat.Shape.ANY,locale = "zh_CN",pattern = "yyyy-MM-dd",timezone = "GMT")
    private Date reportDate;

    /**
    * 陪诊病患人数
    */
    @ApiModelProperty(value="陪诊病患人数")
    private Integer patientCount;

    /**
    * 预约次数
    */
    @ApiModelProperty(value="预约次数")
    private Integer appointmentCount;

    /**
    * 预约完成次数
    */
    @ApiModelProperty(value="预约完成次数")
    private Integer completedAppointmentCount;

    /**
    * 预约取消次数
    */
    @ApiModelProperty(value="预约取消次数")
    private Integer cancelledAppointmentCount;

    /**
    * 平均陪诊评价分数
    */
    @ApiModelProperty(value="平均陪诊评价分数")
    private BigDecimal averageEvaluationScore;

    /**
    * 创建时间
    */
    @ApiModelProperty(value="创建时间")
    private Date createTime;

    /**
    * 修改时间
    */
    @ApiModelProperty(value="修改时间")
    private Date updateTime;

    /**
    * 创建用户
    */
    @ApiModelProperty(value="创建用户")
    @Size(max = 100,message = "创建用户最大长度要小于 100")
    private String createUser;

    /**
    * 修改用户
    */
    @ApiModelProperty(value="修改用户")
    @Size(max = 100,message = "修改用户最大长度要小于 100")
    private String updateUser;

    /**
    * 删除标志：0-未删除 1-已删除
    */
    @ApiModelProperty(value="删除标志：0-未删除 1-已删除")
    private Integer deleteFlag;

    private static final long serialVersionUID = 1L;
}